/**
 * Licensee: DuKe TeAm
 * License Type: Purchased
 */
package ormsamples;

import org.orm.*;
public class RetrieveAndUpdatePrueba1ClinicaData {
	public void retrieveAndUpdateTestData() throws PersistentException {
		PersistentTransaction t = orm.clinica.com.Prueba1ClinicaPersistentManager.instance().getSession().beginTransaction();
		try {
			orm.clinica.com.DAOFactory lDAOFactory = orm.clinica.com.DAOFactory.getDAOFactory();
			orm.clinica.com.dao.PacienteDAO lormclinicacomPacienteDAO = lDAOFactory.getPacienteDAO();
			orm.clinica.com.Paciente lormclinicacomPaciente = lormclinicacomPacienteDAO.loadPacienteByQuery(null, null);
			// Update the properties of the persistent object
			lormclinicacomPacienteDAO.save(lormclinicacomPaciente);
			orm.clinica.com.dao.PrestacionDAO lormclinicacomPrestacionDAO = lDAOFactory.getPrestacionDAO();
			orm.clinica.com.Prestacion lormclinicacomPrestacion = lormclinicacomPrestacionDAO.loadPrestacionByQuery(null, null);
			// Update the properties of the persistent object
			lormclinicacomPrestacionDAO.save(lormclinicacomPrestacion);
			orm.clinica.com.dao.OpcionPrestacionDAO lormclinicacomOpcionPrestacionDAO = lDAOFactory.getOpcionPrestacionDAO();
			orm.clinica.com.OpcionPrestacion lormclinicacomOpcionPrestacion = lormclinicacomOpcionPrestacionDAO.loadOpcionPrestacionByQuery(null, null);
			// Update the properties of the persistent object
			lormclinicacomOpcionPrestacionDAO.save(lormclinicacomOpcionPrestacion);
			t.commit();
		}
		catch (Exception e) {
			t.rollback();
		}
		
	}
	
	public void retrieveByCriteria() throws PersistentException {
		System.out.println("Retrieving Paciente by PacienteCriteria");
		orm.clinica.com.PacienteCriteria pacienteCriteria = new orm.clinica.com.PacienteCriteria();
		// Please uncomment the follow line and fill in parameter(s)
		//pacienteCriteria.rut.eq();
		System.out.println(pacienteCriteria.uniquePaciente());
		
		System.out.println("Retrieving Prestacion by PrestacionCriteria");
		orm.clinica.com.PrestacionCriteria prestacionCriteria = new orm.clinica.com.PrestacionCriteria();
		// Please uncomment the follow line and fill in parameter(s)
		//prestacionCriteria.id_prestacion.eq();
		System.out.println(prestacionCriteria.uniquePrestacion());
		
		System.out.println("Retrieving OpcionPrestacion by OpcionPrestacionCriteria");
		orm.clinica.com.OpcionPrestacionCriteria opcionPrestacionCriteria = new orm.clinica.com.OpcionPrestacionCriteria();
		// Please uncomment the follow line and fill in parameter(s)
		//opcionPrestacionCriteria.id_opcion.eq();
		System.out.println(opcionPrestacionCriteria.uniqueOpcionPrestacion());
		
	}
	
	
	public static void main(String[] args) {
		try {
			RetrieveAndUpdatePrueba1ClinicaData retrieveAndUpdatePrueba1ClinicaData = new RetrieveAndUpdatePrueba1ClinicaData();
			try {
				retrieveAndUpdatePrueba1ClinicaData.retrieveAndUpdateTestData();
				//retrieveAndUpdatePrueba1ClinicaData.retrieveByCriteria();
			}
			finally {
				orm.clinica.com.Prueba1ClinicaPersistentManager.instance().disposePersistentManager();
			}
		}
		catch (Exception e) {
			e.printStackTrace();
		}
	}
}
